
export interface SysNav {
  id?: number;
  title?: string;
  link?: string;
  target?: string;
  displayOrder?: number;
  iconCls?: string;
}

export interface MenuItem {
  label?: string;
  icon?: string;
  command?: (event?: any) => void;
  url?: string;
  routerLink?: any;
  queryParams?: {
    [k: string]: any;
  };
  items?: MenuItem[] | MenuItem[][];
  expanded?: boolean;
  disabled?: boolean;
  visible?: boolean;
  target?: string;
  routerLinkActiveOptions?: any;
  separator?: boolean;
  badge?: string;
  badgeStyleClass?: string;
  style?: any;
  styleClass?: string;
  title?: string;
  id?: string;
  automationId?: any;
  tabindex?: string;
}

export interface SelectItem {
  text?: string;
  label?: string;
  value: any;
  styleClass?: string;
  icon?: string;
  title?: string;
  disabled?: boolean;
}

export interface ButtonItem {
  label?: string;
  type?: string;
  icon?: string;
  code?: string | number; // 页面控制, 用作权限判断
  disabled?: boolean;
  handler?: Function | any;
  show?: any;
  time?: number
}